package com.bjut.vendormgrsys.service;

import com.bjut.vendormgrsys.model.domain.CampaignPO;
import com.bjut.vendormgrsys.web.dto.Status;
import com.bjut.vendormgrsys.web.dto.campaign.*;
import com.bjut.vendormgrsys.web.dto.user.Body;
import com.bjut.vendormgrsys.web.dto.user.UserScoreInfo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface CampaignService {

    void saveCampaignPO(CampaignInfo campaignInfo);

    long findAll(final CampaignSearch body, List<CampaignInfo> list);

    void changeStatus(List<Body> bodies);

    void changeAuditStatus(List<Body> bodies);

    CampaignInfo findById(String id, Boolean withUser);

    List<Status> findAllStatus(CampaignSearch role);

    void signUpCampaignPost(List<CampaignUserInfo> body);

    void cancelSignUpCampaignPost(List<CampaignUserInfo> body);

    void addExpansionPost(CampaignUserInfo campaignExpansionInfo);

    void userAddScorePost(UserScoreInfo userInfo);

    void addExpansionFilePost(CampaignFile body);
}
